
/**
 * Date:2019年6月3日上午9:22:46
 * Copyright (c) 2019, www.bwbroad.com All Rights Reserved.
 *
*/

package com.xue.im.server.handler;

import com.xue.im.common.IMUtil;
import com.xue.im.common.IMUtil.MessageType;
import com.xue.im.common.vo.Message;

import io.netty.channel.ChannelHandlerContext;
import io.netty.channel.ChannelInboundHandlerAdapter;

/**
 * Description: 服务器端心跳响应处理 <br/>
 * Date: 2019年6月3日 上午9:22:46 <br/>
 * 
 * @author xuejianxin
 */
public class HeartBeatResponseHandler extends ChannelInboundHandlerAdapter {

	@Override
	public void channelRead(ChannelHandlerContext ctx, Object msg) throws Exception {
		Message message = (Message) msg;
		// 判断是否心跳信息
		if (IMUtil.checkMessageType(message, MessageType.HEARTBEAT_REQ)) {
			// 构建心跳响信息
			Message heartBeat = IMUtil.buildMessage(MessageType.HEARTBEAT_RESP);
			// 发送心跳响应
			ctx.writeAndFlush(heartBeat);
		} else {
			ctx.fireChannelRead(msg);
		}

	}

}
